package com.git.bds.mr.hospital.service.sector;

import com.git.bds.mr.doctor.model.domain.Doctor;
import com.git.bds.mr.hospital.model.domain.Sector;
import com.git.bds.mr.hospital.model.vo.DoctorVO;
import com.git.bds.mr.hospital.model.vo.SectorVO;
import com.git.bds.mr.page.PageParam;
import com.git.bds.mr.page.PageResult;
import com.github.yulichang.base.MPJBaseService;

import java.util.List;

/**
 * <p>
 * 科室表 服务类
 * </p>
 *
 * @author 成大事
 * @since 2022-09-19 16:43:59
 */
public interface SectorService extends MPJBaseService<Sector> {

    /**
     * 获取所有科室
     *
     * @return {@link List}<{@link Sector}>
     */
    List<Sector> getAllSector();

    /**
     * 获取所有科室 分页
     *
     * @param pageParam 页面参数
     * @return {@link PageResult}<{@link List}<{@link SectorVO}>>
     */
    PageResult<SectorVO> getAllSectorPage(PageParam pageParam);

    /**
     * 获得此科室下所有医生
     *
     * @param sectorId 扇区id
     * @return {@link List}<{@link Doctor}>
     */
    List<Doctor> getAllDoctors(Long sectorId);

    /**
     * 获取所有医生 分页
     *
     * @param sectorId  扇区id
     * @param pageParam 页面参数
     * @return {@link PageResult}<{@link DoctorVO}>
     */
    PageResult<DoctorVO> getAllDoctorsPage(PageParam pageParam,Long sectorId);
}
